package com.my.zl.console.service.autocode;

import com.my.zl.common.dto.ReqDTO;
import com.my.zl.common.dto.advancedQuery.PageQueryDTO;
import com.my.zl.console.entity.autocode.ZlProject;
import com.my.zl.console.dto.autocode.project.ReqProjectAddDTO;
import com.my.zl.console.dto.autocode.project.ReqProjectDelDTO;
import com.my.zl.console.dto.autocode.project.ReqProjectEditDTO;
import com.my.zl.console.dto.autocode.project.ReqProjectQueryDTO;
import com.my.zl.console.dto.autocode.project.ReqProjectDetailDTO;
import com.my.zl.console.dto.autocode.project.ReqProjectStateDTO;
import com.my.zl.console.dto.autocode.project.ResProjectAddDTO;
import com.my.zl.console.dto.autocode.project.ResProjectDelDTO;
import com.my.zl.console.dto.autocode.project.ResProjectEditDTO;
import com.my.zl.console.dto.autocode.project.ResProjectQueryDTO;
import com.my.zl.console.dto.autocode.project.ResProjectDetailDTO;
import com.my.zl.console.dto.autocode.project.ResProjectStateDTO;

/**
 * 项目配置
 * @author ZL
 */
public interface IProjectService {

    /**
     * 查询
     */
    ResProjectQueryDTO queryProjectList(ReqProjectQueryDTO reqInfo,PageQueryDTO page) throws Exception;
    
    /**
     * 详情
     */
    ResProjectDetailDTO queryProjectDetail(ReqProjectDetailDTO reqInfo) throws Exception;
    
    /**
     * 新增
     */
    ResProjectAddDTO insertProjectInfo(ReqDTO<ReqProjectAddDTO> reqInfo) throws Exception;
    
    /**
     * 编辑
     */
    ResProjectEditDTO updateProjectInfo(ReqDTO<ReqProjectEditDTO> reqInfo) throws Exception;
    
    /**
     * 删除
     */
    ResProjectDelDTO deleteProjectInfo(ReqDTO<ReqProjectDelDTO> reqInfo) throws Exception;
    
    /**
     * 更新状态
     */
    ResProjectStateDTO updateProjectState(ReqDTO<ReqProjectStateDTO> reqInfo) throws Exception;
    
    
}